home *** CD-ROM | disk | FTP | other *** search
/ STraTOS 1997 April & May / STraTOS 1 - 1997 April & May.iso / CD01 / PRGMANIA / VERSION1.5 / FALCON30.H < prev    next >
Encoding:
C/C++ Source or Header  |  1996-04-06  |  5.6 KB  |  189 lines

  1. /* ====================================================================
  2.  *        Bindings for the new Atari FALCON 030 computer
  3.  *                TOS 4.2
  4.  * ====================================================================
  5.  *
  6.  * Falcon/030 news call and defines.
  7.  * France (c) Atari 
  8.  * 27 Jully 1994
  9.  * revision, 28/7/94
  10.  * by FunShip
  11.  * Pure-C bindings
  12.  *
  13.  */
  14.  
  15. #ifndef    __FALCON030__
  16. #define    __FALCON030__    __FALCON030__
  17.  
  18. /*
  19.   ====================== Video call and defines =======================
  20. */
  21.  
  22.  
  23. #define XSetscreen(log,phy,mode)    (int)xbios(0x05,log,phy,3,mode)
  24.  
  25. #define Vsetmode(mode)            (int)xbios(0x58,mode)
  26. #define Mon_Type()            (int)xbios(0x59)
  27. #define Vsetsync(mode)            (void)xbios(0x5A,mode)
  28. #define Vgetsize(mode)            (long)xbios(0x5B,mode)
  29. #define VsetRGB(tabl,n,index)        (void)xbios(0x5D,tabl,n,index)
  30. #define VgetRGB(tabl,n,index)        (void)xbios(0x5E,tabl,n,index)
  31.  
  32.  
  33.  
  34. #define NUMCOLS            7
  35.  
  36. #define VERTFLAG        0x0100
  37. #define STMODES            0x0080
  38. #define OVERSCAN        0x0040
  39. #define PAL            0x0020
  40. #define VGA            0x0010
  41. #define TV            0x0000
  42.  
  43. #define COL80            0x0008
  44. #define COL40            0
  45.  
  46. #define NUMCOLS            7
  47. #define BPS16            4
  48. #define BPS8            3
  49. #define BPS4            2
  50. #define BPS2            1
  51. #define BPS1            0
  52.  
  53. /*
  54.   ====================== Sound call and defines =======================
  55. */
  56.  
  57. #define Locksnd()            (long)xbios(0x80)
  58. #define Unlocksnd()            (long)xbios(0x81)
  59. #define Soundcmd(mode,data)        (long)xbios(0x82,mode,data)
  60. #define Setbuffer(reg,beg,end)        (long)xbios(0x83,reg,beg,end)
  61. #define Setmode(mode)            (long)xbios(0x84,mode)
  62. #define Settracks(play,rec)        (long)xbios(0x85,play,rec)
  63. #define Setmontracks(track)        (long)xbios(0x86,track)
  64. #define Setinterrupt(src,cause)        (long)xbios(0x87,src,cause)
  65. #define Buffoper(mode)            (long)xbios(0x88,mode)
  66. #define Dsptristate(dspxmit,dsprec)    (long)xbios(0x89,dspxmit,dsprec)
  67. #define Gpio(mode,data)            (long)xbios(0x8A,mode,data)
  68. #define Devconnect(src,dest,clk,presc,proto)    (long)xbios(0x8B,src,dest,clk,presc,proto)
  69. #define Sndstatus(reset)        (long)xbios(0x8C,reset)
  70. #define Buffptr(pointer)        (long)xbios(0x8D,pointer)
  71.  
  72. /* locksnd et unlocksnd */
  73. #define SNDLOCKED    129
  74. #define SNDNOLOCK    128
  75.  
  76. /* Soundcmd */
  77. #define LTATTEN        0
  78. #define RTATTEN        1
  79. #define LTGAIN        2
  80. #define RTGAIN        3
  81. #define ADDERIN        4
  82. #define ADCINPUT    5
  83. #define SETPRESCALE    6
  84.  
  85. #define ADCIN        1
  86. #define MATIN        2
  87.  
  88. #define PSGRT        1
  89. #define PSGLT        2
  90. #define MICRO        0
  91.  
  92. /* Setbuffer */
  93. #define BUFRECORD    1
  94. #define BUFPLAY        0
  95.  
  96. /* Setmode */
  97. #define STEREO8        0
  98. #define STEREO16    1
  99. #define MONO8        2
  100.  
  101. /* Setmontracks */
  102. #define TRACK0        0
  103. #define TRACK1        1
  104. #define TRACK2        2
  105. #define TRACK3        3
  106.  
  107. /* Setinterrupt */
  108. #define ITNONE        0
  109. #define ITENDPLAY    1
  110. #define ITENDREC    2
  111.  
  112. /* Buffoper */
  113. #define OPER_OFF    0
  114. #define OPER_PLAY    1
  115. #define OPER_PLAY_LOOP    2
  116. #define OPER_REC    4
  117. #define OPER_REC_LOOP    8
  118.  
  119. /* Devconnect */
  120. #define ADC        3
  121. #define EXTINP        2
  122. #define DSPXMIT        1
  123. #define DMAPLAY        0
  124.  
  125. #define DMAREC        1
  126. #define DSPRECV        2
  127. #define EXTOUT        4
  128. #define DAC        8
  129.  
  130. #define CLK25M        0
  131. #define CLKEXT        1
  132. #define CLK32M        2
  133. #define CLK50K        1
  134. #define CLK33K        2
  135. #define CLK25K        3
  136. #define CLK20K        4
  137. #define CLK16K        5
  138. #define CLK12K        7
  139. #define CLK10K        9
  140. #define CLK8K        11
  141.  
  142. #define HANDSHAKE    0
  143. #define NOHANDSHAKE    1
  144.  
  145. #define SND_RESET    1
  146.  
  147. /*
  148.   ======================= DSP call and defines ========================
  149. */
  150.  
  151. #define Dsp_DoBlock(datain,sizein,dataout,sizeout)    (void)xbios(0x60,datain,sizein,dataout,sizeout)
  152. #define Dsp_BlkHandshake(datain,sizein,dataout,sizeout)    (void)xbios(0x61,datain,sizein,dataout,sizeout)
  153. #define Dsp_BlkUnpacked(datain,sizein,dataout,sizeout)    (void)xbios(0x62,datain,sizein,dataout,sizeout)
  154. #define Dsp_InStream(datain,blksize,numblk,blkdone)    (void)xbios(0x63,datain,blksize,numblk,blkdone)
  155. #define Dsp_OuStream(dataout,blksize,numblk,blkdone)    (void)xbios(0x64,dataout,blksize,numblk,blkdone)
  156. #define Dsp_IOStream(a,b,c,d,e,f)            (void)xbios(0x65,a,b,c,d,e,f)
  157. #define Dsp_RemoveInterrupts(mask)            (void)xbios(0x66,mask)
  158. #define    Dsp_GetWordSize()                (void)xbios(0x67)
  159. #define    Dsp_Lock()                    (int)xbios(0x68)
  160. #define Dsp_Unlock()                    (void)xbios(0x69)
  161. #define Dsp_Available(xavail,yavail)            (void)xbios(0x6A,xavail,yavail)
  162. #define Dsp_Reserve(xreser,yreser)            (void)xbios(0x6B,xreser,yreser)
  163. #define    Dsp_LoadProg(file,ability,buff)            (int)xbios(0x6C,file,ability,buff)
  164. #define Dsp_ExecProg(ptr,codesize,ability)        (void)xbios(0x6D,ptr,codesize,ability)
  165. #define Dsp_ExecBoot(ptr,codesize,ability)        (void)xbios(0x6E,ptr,codesize,ability)
  166. #define Dsp_LodToBinary(file,ptr)            (void)xbios(0x6F,file,ptr)
  167. #define Dsp_TriggerHC(vector)                (void)xbios(0x70,vector)
  168. #define Dsp_RequestUniqueAbility()            (int)xbios(0x71)
  169. #define Dsp_GetProgAbility()                (void)xbios(0x72)
  170. #define Dsp_FlushSubroutines()                (void)xbios(0x73)
  171. #define Dsp_LoadSubroutines(ptr,size,ability)        (void)xbios(0x74,ptr,size,ability)
  172. #define Dsp_InqSubrAbility(ability)            (void)xbios(0x75,ability)
  173. #define Dsp_RunSubroutine(handle)            (void)xbios(0x76,handle)
  174. #define Dsp_HF0(flag)                    (void)xbios(0x77,flag)
  175. #define Dsp_HF1(flag)                    (void)xbios(0x78
  176. #define Dsp_HF2()                    (void)xbios(0x79)
  177. #define Dsp_HF3()                    (void)xbios(0x7A)
  178. #define Dsp_BlkWords(din,sin,dout,sout)            (void)xbios(0x7B,din,sin,dout,sout)
  179. #define Dsp_BlkBytes(din,sin,dout,sout)            (void)xbios(0x7C,din,sin,dout,sout)
  180. #define Dsp_HStat()                    (void)xbios(0x7D)
  181. #define Dsp_SetVectors(receive,transmit)        (void)xbios(0x7E,receive,transmit)
  182. #define Dsp_MultiBlocks(nsend,nreceive,sblk,rblk)    (void)xbios(0x7F,nsend,nreceive,sblk,rblk)
  183.  
  184. /*
  185.   ================= End of Falcon's calls & defines ===================
  186. */
  187.  
  188. #endif
  189. /*End of File*/